import Vue from "vue";
import VueRouter from "vue-router";

Vue.use(VueRouter);

// 解决编程式路由往同一地址跳转时会报错的情况
const originalPush = VueRouter.prototype.push;
const originalReplace = VueRouter.prototype.replace;
// push
VueRouter.prototype.push = function push(location, onResolve, onReject) {
  if (onResolve || onReject)
    return originalPush.call(this, location, onResolve, onReject);
  return originalPush.call(this, location).catch(err => err);
};
// replace
VueRouter.prototype.replace = function push(location, onResolve, onReject) {
  if (onResolve || onReject)
    return originalReplace.call(this, location, onResolve, onReject);
  return originalReplace.call(this, location).catch(err => err);
};

const routes = [
  {
    path: "/",
    name: "Home",
    redirect: {
      name: "Portal",
    },
    children: [],
  },
  // {
  //   path: "/Introduce",
  //   name: "Introduce",
  //   meta: {
  //     isDefault: true,
  //   },
  //   component: () =>
  //     import(/* webpackChunkName: "Introduce" */ "../views/Introduce/index"),
  // },
  {
    path: "/Login",
    name: "Login",
    meta: {
      isDefault: true,
    },
    component: () =>
      import(/* webpackChunkName: "Login" */ "../views/login/login.vue"),
  },
  {
    path: "/Portal",
    name: "Portal",
    meta: {},
    component: () =>
      import(/* webpackChunkName: "Portal" */ "../views/Portal.vue"),
  },
  {
    path: "/404",
    name: "404",
    meta: {
      isDefault: true,
    },
    component: () =>
      import(/* webpackChunkName: "404" */ "../views/error-page/404.vue"),
  },
];

const router = new VueRouter({
  routes,
});




export default router;
